Abstract: The Unreliability of the C language has been in the forefront due to multiple memory access violations. Various methods have been devised to detect memory errors at runtime but are unable to detect all of them. These hurdles give rise to a various problems such as manual code modification, usage of metadata which is unsuited and high runtime outlays. This type of overwhelming conditions give rise to various compiler analysis tools which ensures the memory safety of C programs at runtime while avoiding any possible shortcomings and also help to lower the runtime cost of attaining memory safety.

Keywords: Memory Management, Memory Safety, Memory Violations, Memory Optimization.